Skip to content

两种方式实现WSL跟随Windows开机自动启动

📺 本图文教程由视频整理而成,对应的参考视频:计划任务|NSSM实现WSL开机启动~任选其一,即可实现docker服务的优雅跟随启动~。如需查看更详细、更具体的操作演示,可观看原视频。

场景:已在 Windows 上通过 WSL 安装 Docker,希望每次开机时 WSL 自动启动、Docker 服务随之运行,无需手动打开终端,且不弹出黑色窗口。适用于台式机、小主机及笔记本用户。

提示:本教程配套的操作文档,可在好用斋官网网盘分享(提取码 588)中下载。

本文提供两种实现方式,任选其一即可:

方式是否需要额外软件特点
计划任务最简单,系统自带
NSSM更通用,几乎所有 Windows 程序都能注册为后台服务

两种方式均为后台静默启动,无任何弹窗。相比 BAT 批处理放进启动文件夹的方案(开机会闪现黑色终端窗口),更加优雅,优先推荐。

方式一:通过计划任务

第1步:打开计划任务并新建任务

  1. 在左下角 Windows 图标上点击右键 → 选择搜索
  2. 输入「计划任务」并点击打开「任务计划程序」。
  3. 在右侧空白处点击右键 → 选择新建任务
  4. 在「常规」选项卡顶部填写任务名,例如 WSL(若忘记填写,确定时会提示返回补填)。
计划任务新建任务配置界面

第2步:常规选项

在「常规」选项卡中勾选以下两项:

  1. 不管用户是否登录都要运行
  2. 使用最高权限运行

第3步:触发器

  1. 切换到「触发器」选项卡 → 点击新建
  2. 「开始任务」选择 启动时
  3. 点击确定

第4步:操作

  1. 切换到「操作」选项卡 → 点击新建
  2. 在「程序和脚本」中填入 WSL 程序所在位置:
powershell
C:\Windows\System32\wsl.exe
  1. 点击确定,返回后再次点击确定
  2. 此时会要求输入当前登录 Windows 用户的密码,输入后点击确定,任务即创建完成。

第5步:验证与停用

  1. 重启 Windows,稍等片刻(启动需要一定时间)。
  2. 通过网页登录 Docker 服务,例如上一期介绍的 Sun-Panel 导航页,随便点击几个服务,能正常打开即说明自启动已生效。
  3. 暂时不想用时:右键任务 → 禁用;永久不用时:右键任务 → 删除

注意(笔记本用户)

笔记本若希望每次开机都启动,建议在「条件」选项卡中将电源相关选项(如使用电池时停止任务等)取消勾选;台式机/小主机按默认设置即可。

方式二:通过 NSSM

NSSM 可将任意程序注册为 Windows 后台服务,随系统开机自启,优雅且通用。

第1步:打开 NSSM 文件夹并进入终端

  1. 从网盘下载 NSSM 并解压,进入对应文件夹(64 位系统选择 win64,32 位选择 win32)。
  2. 在文件夹上方地址栏输入 cmd 并回车,即在该目录打开终端。
NSSM服务配置界面

第2步:安装服务

在终端中执行(服务名可自定义,hao 开头便于在进程中识别):

powershell
nssm install haoWSL

回车后会弹出图形配置界面,服务名已自动填入 haoWSL

第3步:配置 Application

在「Application」选项卡中填写两行内容:

字段内容
第一行(程序路径)C:\Windows\System32\wsl.exe
第二行(工作目录)C:\Windows\System32

第一行是 WSL 程序本身所在位置,第二行是它上一级的路径。

第4步:配置 Log on

WSL 与普通程序不同,还需要额外配置登录账户:

  1. 切换到 Log on 选项卡。
  2. 选择 This account
  3. 输入当前登录 Windows 的用户名和密码

注意

这里输入的是 Windows 登录账户的用户名和密码,不是 WSL 虚拟机的用户名和密码,与方式一中计划任务要求的密码一致。

  1. 点击 Install service,提示服务 haoWSL 安装成功后点击确定。

第5步:验证与删除服务(可选)

重启设备后 WSL 会自动启动,Docker 服务随之运行,即可直接通过网页访问 Docker 程序。

若不再需要该服务,在终端中执行(服务名与安装时保持一致):

powershell
nssm remove haoWSL

回车后确认「是」,提示服务删除成功即可。再次重启后,WSL 的开机启动服务即被移除。

总结

两种方式操作都只需三步左右,且均无弹窗、后台静默启动:

  1. 计划任务方式无需安装任何软件,系统自带,最简便。
  2. NSSM 方式通用性更强,几乎可以把 Windows 中的任意程序注册为后台服务。
  3. 举一反三:不仅 WSL,其他 Windows 程序同样可以用这两种方法实现开机自启。

参考视频

好用斋官网

Released under MIT License.